#ifndef __CC_CONFIG__
#define __CC_CONFIG__

#define CC_CONFIG_COMPONENT_NAME_MAX 30

#define CC_CONFIG_TID_NAME_MAX      30
#define CC_CONFIG_THREAD_NUM_MAX    30
#define CC_CONFIG_COMPONENT_NUM_MAX 30
// esp32 require must bigger than 2048
#define CC_CONFIG_THREAD_MIN_STACKSIZE 2048

#define CC_CONFIG_SERAIL_BAUD       9600
#define CC_CONFIG_MAX_SERIAL_RX_LEN 256

#define CC_CONFIG_SHELL_COMMAND_MAX      30
#define CC_CONFIG_SHELL_COMMAND_NAME_MAX 20
#define CC_CONFIG_SHELL_INFO_MAX         50
#define CC_CONFIG_SHELL_PARAM_MAX_LEN    40
#define CC_CONFIG_SHELL_RX_QUEUE_LEN     10

#define CC_CONFIG_MAX_TOPIC_SUBSRIBE        32
#define CC_CONFIG_MSG_TOPIC_MAX_LEN         30
#define CC_CONFIG_MSG_DATA_MAX_LEN          200
#define CC_CONFIG_MSG_MQTT_BUFFSIZE_MAX     4096
#define CC_CONFIG_MSG_HANDLE_PREFIX_MAX_LEN 20
#define CC_CONFIG_MSG_MAX_HANDLE_NUM        8

#define CC_CONFIG_DEVICE_MAX_NUM_DATA  8
#define CC_CONFIG_DEVICE_MAX_NUM       10
#define CC_CONFIG_DEVICE_MAX_READ_BUFF 50
#define CC_CONFIG_DEVICE_MAX_TYPE      32
#define CC_CONFIG_DEVICE_QUEUE_LENGTH  10
#define CC_CONFIG_DEVICE_QUEUE_SIZE    100

#define CC_CONFIG_USE_DEVIEMSG 0
#define CC_CONFIG_USE_WIFI     0
#define CC_CONFIG_USE_MQTT     0

#define CC_CONFIG_DEVICE_DISTR_HEAD "d_distr:"

#define CC_CONFIG_TEST_SEM          0
#define CC_CONFIG_TEST_MUT          0
#define CC_CONFIG_TEST_COND         0
#define CC_CONFIG_TEST_MEM          0
#define CC_CONFIG_TEST_TIMER        0
#define CC_CONFIG_TEST_QUEUE        0
#define CC_CONFIG_TEST_WORKQUEUE    0
#define CC_CONFIG_TEST_MSG          0
#define CC_CONFIG_TEST_PORT         0
#define CC_CONFIG_TEST_EVENT_THREAD 0

#define CC_CONFIG_WIFI_MAX_SSID_LEN 20
#define CC_CONFIG_WIFI_MAX_PWD_LEN  20

#define CC_CONFIG_CC_PORT_MAX_NUM   16
#define CC_CONFIG_PORT_NAME_MAX_LEN 30

#endif